import numpy as np
import cv2 as cv

# 创建2*2照片
img = np.zeros((2, 2, 3), np.uint8)
b, g, r = cv.split(img)

# 图片1 [150 100 10]
b[:] = 150
g[:] = 100
r[:] = 10
img1 = cv.merge([b, g, r])
cv.imshow("img1", img1)

# 图片2 [10 100 150]
b[:] = 10
g[:] = 100
r[:] = 150
img2 = cv.merge([b, g, r])
cv.imshow("img2", img2)

# 图像混合
alpha = 0.3  # 第一幅图像的权重
beta = 0.7   # 第二幅图像的权重
gamma = 0    # 可选的标量值
img_weighted1 = cv.addWeighted(img1, alpha, img2, beta, gamma)
cv.imshow("img_weighted1", img_weighted1)

img_weighted2 = cv.addWeighted(img1, 0.5, img2, 0.5, 0)
cv.imshow("img_weighted2", img_weighted2)

cv.waitKey(0)
cv.destroyAllWindows()